The present invention relates to a digital audio tape recorder (DAT), and more particularly to an addressing circuit for controlling an addressing function in order to correct an error in case of recording digital data transmitted from a host computer on the basis of a digital data storage (DDS) format.
In a conventional DAT for recording and reproducing audio signals, there is specified a double R-S code (Reed-Solomon code) of C1 and C2. Moreover, since the DDS format for processing digital data by use of the DAT specifies a C3 ECC (Error Correction Code) for improving the reliability of data as well as the C1 and C2 codes, a parity besides data is additionally recorded. The C3 encoding generally represented by C3 generates a parity of two symbols (in this case, one symbol corresponds to 8 bits) with respect to input data d(x) of 44 symbols, and in the same way with the C1 and C2 codes of the DAT, operations are performed by Galois field. The field means a range or a set of elements for implementing a specific operation. For example, a real number is a field of the four arithmetical operations. Similarly, operations in R-S code are performed within Galois field. The Galois field is expressed by GF(.alpha..sup.m) or GF(2.sup.m), and consists of the total number 2.sup.m of elements. In the case of the DAT, the Galois field of GF(2.sup.8) is used and all the operations are performed with 2.sup.8 =256 elements.
An expression representing the correlationship between elements constituting the Galois field is called a primitive polynomial, and if a predetermined primitive polynomial G(X) is determined, the correlationship between all the elements in the Galois field is determined. In the DAT, the primitive polynomial G(X) is represented by G(X)=X.sup.8 +X.sup.4 +X.sup.3 +X.sup.2 +1, and it is assumed that a root of G(X)=0 is .alpha.. Therefore, the number of elements in GF(2.sup.8) is 256 of {0, .alpha..sup.0, . . . , .alpha..sup.254 }. At this time, .alpha..sup.0 =(0000 0001) and .alpha..sup.255 is equal to .alpha..sup.0. The operation within the Galois field means the operation between symbols, and the result values of all the operations are elements within the field.
Meanwhile, an encoder is an operating circuit for receiving source data d(X) and generating a code word of a regulated form. The code word has k source data symbols and (n-k) parity symbols among a total of n symbols. The source data d(X) is data of the unit of k symbols supplied to the encoder from a signal source, and if the source data d(X) is determined, the parity is generated by a generator polynomial. In the case of C3 of the DDS format, since n=46 and k=44, two parities are produced and the generator polynomial g(X) is as follows: ##EQU1##
The generator polynomial g(X) is an important expression for generating the parity in an encoding process, and a key for correcting an error as well as checking whether an error is generated in received data in a decoding process.
In the DDS format, the recorded and reproduced data is processed by the unit of a group. As shown in FIG. 1, one group consists of 22 frames and a 23rd frame is an ECC frame for recording a parity with respect to the 22 frames. One frame of a DAT has two tracks of positive (+) and negative (-) azimuths, and the data allocation of a main region in one frame is shown in FIG.2.
In the case of the DAT, there is data of 5760 bytes while a drum is rotating once, i.e., during 30 msec, and a sampling frequency thereof is 48 KHz. As shown in FIG.2, the total number of data produced in one frame of the tape is 5824 bytes (1456 words). Moreover, a word number 0 is called a header and the ECC processing for the header is not performed. In addition, 64 bytes (word numbers 1440 to 1455) obtained by subtracting 5760 bytes generated during one rotation of a drum from 5824 bytes of the total number of data in one frame are filled with "0's". On the other hand, C3 (46,44) performs encoding with respect to 5756 bytes except for the header among 5760 bytes generated during each 30 msec period. Through the ECC process, even if there is an error in one frame among 22 frames in one group when reproducing data, it is possible to correct the error. That is, if an error occurs in one symbol out of 44 symbols of the source data d(X), the error can be detected and corrected. However, if there are two errors or more, the correction of the errors is difficult.